iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0
自我挑戰組

R語言初學紀錄系列 第 11

DAY11-R語言 資料結構part.3 列表、資料框

  • 分享至 

  • xImage
  •  

前言:資料結構的最後一篇!如果內容有哪些錯誤的地方,請多多包涵~


正文開始-->
【列表LIST】
列表很靈活。列表中的元素可以為不同的資料類別,除了可以包括數值與文字外,也可以包括資料集,如向量和因子等,還可以包括矩陣與資料框。簡單說意指可以儲存任何型別、長度與外觀的資料。如要建立列表,可使用list()函數。

創建列表
完整程式碼:

teacher_Yu <- list(##設定列表元素
  name = "Mr.Yu",
  age = 20,
  course = c("R語言","資料結構","電子病歷","計算機概論"),
  students = c(27, 25, 30, 49),
  detail = list(##元素可包含資料集
    language = "R",
    level = "advanced"
  )
)
teacher_Yu

使用範例:
https://ithelp.ithome.com.tw/upload/images/20240916/201692282lMynYlCCv.png

列表資料擷取

  • 使用「$」符號做資料擷取
    https://ithelp.ithome.com.tw/upload/images/20240916/201692288rDSHKcjjX.png
  • 使用中括號取得特定的變量值
    https://ithelp.ithome.com.tw/upload/images/20240916/20169228ods2oh63xW.png

修改變量值
https://ithelp.ithome.com.tw/upload/images/20240916/20169228xQvF1eQCmo.png


【資料框DATAFRAME】

  • 資料框為二維資料,具有列與欄兩個維度,包含列索引值與欄索引值,並且每個欄位(變數)都具有自己的型別,是R語言用來處理表格式資料的資料結構。在資料框內的各個變數的觀測值數量(向量長度)都相同。
  • 當R語言讀取外部的表格資料時,也會以資料框的結構儲存起來。可使用data.frame()函式來創建新的資料框。
  • 資料框能包含多種向量類型,包括文字向量、數值向量及邏輯值向量,可以透過 str() 函數查詢組成資料框的向量類型。

創建資料框
完整程式碼:

Customer<- data.frame(CusID=c(1,2,3,4,5), ##欄位名稱=欄位值
                    name=c("華先生","李先生","王小姐","余小姐","葉小姐"),
phone=c(0956236547,0978542687,0975758654,0978456123,0987532178))
Customer ##呈現資料框

使用範例:
https://ithelp.ithome.com.tw/upload/images/20240916/20169228qYQdL5Wmdf.png

瀏覽資料框資料

  • 使用 View() 函式瀏覽資料框的外觀與內容。
  • [m, n] 兩個索引值來選擇要瀏覽的資料, m 代表資料框的觀測值個數, n 代表資料框的變數個數。觀測值代表資料框中水平方向的資料;反之變數代表資料框中垂直方向的資料。
  • 使用 $變數名稱[, "變數名稱"] 這兩個寫法。
  • 使用colnames()函式檢視欄位名稱。
  • 使用rownames()函式檢視列位名稱。
  • 使用str()函式檢視個欄位的資料。

使用範例:
https://ithelp.ithome.com.tw/upload/images/20240916/201692286wrUKlLs7Y.png
⭡⭡使用View()函式瀏覽資料框的外觀與內容。

https://ithelp.ithome.com.tw/upload/images/20240916/20169228lJpvDbvRFn.png
⭡⭡瀏覽資料框特定資料。作法分別為[, "變數名稱"][m, n]$變數名稱

https://ithelp.ithome.com.tw/upload/images/20240916/20169228ftvZ5SD5ch.png
⭡⭡瀏覽資料框特定資料。作法分別為colnames(Customer)rownames(Customer)str(Customer)

參考:

  1. https://r-lover.com/tutorial/r-basic/r-data-structure/
  2. https://yijutseng.github.io/DataScienceRBook/RDataStructure.html#%E5%88%97%E8%A1%A8-list
  3. https://bookdown.org/jefflinmd38/r4biost/
  4. https://hackmd.io/@mutolisp/H1O00yGjZ/https%3A%2F%2Fhackmd.io%2Fs%2FrJrclLyhW#%E5%88%97%E8%A1%A8list

上一篇
DAY10-R語言 資料結構part.2 矩陣、陣列
下一篇
DAY12-R語言 資料處理part.1
系列文
R語言初學紀錄30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言